package com.woniuxy.opencv.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.woniuxy.opencv.pojo.ParkingRecord;

import java.util.List;

/**
 * 停车记录服务接口
 */
public interface ParkingRecordService extends IService<ParkingRecord> {
    
    /**
     * 记录车辆入场
     * @param plateNumber 车牌号
     * @param parkingId 停车场ID
     * @param vehicleType 车辆类型（0临时车，1约租车）
     * @return 停车记录
     */
    ParkingRecord recordVehicleEntry(String plateNumber, Integer parkingId, Integer vehicleType);
    
    /**
     * 记录车辆出场
     * @param plateNumber 车牌号
     * @param parkingId 停车场ID
     * @return 停车记录
     */
    ParkingRecord recordVehicleExit(String plateNumber, Integer parkingId);
    
    /**
     * 查询车辆当前停车状态
     * @param plateNumber 车牌号
     * @return 停车记录，如果没有在停车则返回null
     */
    ParkingRecord getVehicleCurrentParkingStatus(String plateNumber);

    /**
     * 查询所有停车记录
     * @return 停车记录列表
     */
    List<ParkingRecord> getAllParkingRecords();

    /**
     * 通过订单ID查询停车记录
     * @param orderId 订单ID
     * @return 停车记录
     */
    ParkingRecord getByOrderId(Long orderId);
}
